home *** CD-ROM | disk | FTP | other *** search
/ Gamers Delight 2 / Gamers Delight 2.iso / Aminet / game / misc / Mestertipp.lha / Mestertipp / MT.dok < prev    next >
Text File  |  1993-11-08  |  35KB  |  976 lines

  1. MT.dok
  2. ******
  3.  
  4.  
  5.  
  6. Innhold
  7. *******
  8.  
  9.  1. Opphavsrett og distribusjon
  10.  2. Oversikt
  11.  3. Tekniske data
  12.  4. Minimumskrav
  13.  5. Installasjon
  14.  6. Bruk
  15.     6.1. Oppstart
  16.     6.2. Hovedmenyen
  17.     6.3. Informasjon om kupongen
  18.     6.4. Krav til rekkene
  19.     6.5. Tellemåte
  20.     6.6. Tell rekker
  21.     6.7. Vise rekker
  22.     6.8. Test rette
  23.  7. Utskrifter
  24.  8. Framtidige planer
  25.  9. Bugs
  26. 10. Snikreklame
  27.  
  28.  
  29.  
  30. 1. Opphavsrett og distribusjon
  31. ******************************
  32.  
  33. Denne versjonen av Mestertipp er fritt distribuerbar, men opphavsretten
  34. innehas av Tor Rune Skoglund i henhold til loven om opphavsrett. Dette
  35. betyr at du kan kopiere denne versjonen fritt sammen med alle de andre
  36. filene som følger med, men at du ikke kan endre noe i programmet.
  37.  
  38. This version of Mestertipp is freely distributable but copyrighted by Tor
  39. Rune Skoglund according to Norwegian and international copyright laws.
  40. Copyright (C) 1985-1993 Tor Rune Skoglund.
  41.  
  42. Hvis du vil ha neste versjon tilsendt gratis, send 1 diskett og et 5,50
  43. kroners frimerke til adressen under. Du kan eventuelt sette inn 15 kroner
  44. på postgirokonto 0803 4592374.
  45.  
  46. Tor Rune Skoglund
  47. Linerleveien 7 B
  48. N-7022 Trondheim
  49. Norge
  50.  
  51. Internet e-mail: torrunes@idt.unit.no
  52.  
  53. Hvis du liker programmet eller har forslag til forbedringer og nye
  54. muligheter, vil jeg selvsagt også sette  pris på å bli fortalt om det.
  55.  
  56. Det er tillatt å distribuere dette programmet og dokumentasjonen på hvilken
  57. som helst måte så lenge begge holdes samlet og selve teksten i
  58. dokumentasjonen ikke endres. Pakk gjerne ilene med lha, lharc eller andre
  59. pakkere hvis du ønsker det. I tillegg må programmet Onliner og Onliner.dok
  60. følge med.
  61.  
  62. M.a.o. må følgende filer være med: 
  63.  
  64. * MT          - selve programmet
  65. * MT.dok      - dokumentasjonen til Mestertipp
  66. * Onliner     - program for å lage filer på Online-format
  67. * Onliner.dok - dokumentasjonen til Onliner 
  68. * I tillegg eventuelle ikoner til disse filene.
  69.  
  70. Jeg vil forsøke å uploade neste versjon på Aminet, ftp.funet.fi og enkelte
  71. BBS'er.
  72.  
  73.  
  74.  
  75. 2. Oversikt
  76. ***********
  77.  
  78. OK, nok jalla. På tide å komme til poenget.
  79.  
  80. Hva pokker er Mestertipp? Forklaring kommer herved:
  81.  
  82. Mestertipp (MT) er et avansert tippesystem for fotballtipping. Det finnes
  83.  det jo nok av fra før, men dette er noe MER. Alle de dataprogrammer for
  84.  fotballtipping jeg har kommer over har stort sett hvert direkte
  85. oversettelse av systemer som har blitt brukt i bokform inntil datamaskinen
  86. gjorde sitt  inntog. Altså har de brakt lite eller intet nytt inn når det
  87. gjelder systemer.
  88.  
  89. Mestertipp er et første skritt på veien til å lage "The Ultimate System".
  90. Programmet er LANGT FRA ferdig, dette er en MEGET ENKEL versjon (knapt det
  91. engang :-), og alle mulighetene er ikke implementert eller gjort
  92. tilgjengelige gjennom brukergrensesnittet. ("Brukergrensesnitt" - hvilket
  93. brukergrensenitt??? Mer om det siden... :-)
  94.  
  95. Foreløpig er kun programmet beregnet for norske forhold, men det kan også
  96. hånterer 13 kamper, slik som det benyttes i Sverige on Danmark.  (Hva med
  97. Finland - 12 eller 13 kamper?) I tillegg bruker vi rare  nordmenn H, U og B
  98. som tegn på kupongen, og ikke 1, X og 2 som de bruker i Sverige/Danmark.
  99. Dette kan svensker og dansker kanskje leve med, men siden det heller ikke
  100. finnes noen rutine for å skrive rekkene på filformat som benyttes på
  101. svenske/danske  Online-terminaler, er programmet kanskje litt begrenset for
  102. disse.
  103.  
  104. Programmet er restene av en prosjektoppgave fra min tid ved Trondheim
  105. Ingeniørhøgskole, og det var meningen å implementere programmet under
  106. Windows og Amiga. Det ble med det siste... (Forresten, Windows er noe
  107. skikkelig MØKK. HELE programmet må skrives for Windows, det er ikke nok å
  108. 'legge på' et brukergrensesnitt senere slik som det er  naturlig på Amiga
  109. og andre vindussystemer... Men nok om det.)
  110.  
  111. Programmet startet sin karriere på en gammel god traver, nemlig en  VIC 20
  112. (!) tilbake i ur-tiden 1985. Dog med hele 16K RAM ekstra, og 60% i ren  og
  113. herlig selvmodifiserende 6502 MC - those were the days...:-)
  114.  
  115. MT for Amiga er en utvided versjon med masse nytt (skulle bare mangle!),
  116. men hovedprinsippene er fortsatt de samme. (Jeg kjenner faktisk til noen
  117. som har brukt programmet pp VIC-20 inntil nylig! Det gikk nemlig an å
  118. skrive ut på datakuponger med en Okimate 20 printer! (og KUN den!))
  119.  
  120. Nok om det. Hvordan fungerer MT?
  121.  
  122. Slik er "tippeprosessen", kort forklart:
  123.  
  124. 1) Du har kupongen og vet litt (helst MYE!) om lagene.
  125. 2) Du setter opp dine tips og dine krav til rekker.
  126. 3) Du spesifiserer din redusjonsfaktor. (Garanti.)
  127. 4) Maskinen finner de rekkene som oppfyller dine krav.
  128. 5) Du går tilbake til 2) hvis det ble for mange rekker...
  129. 6) Du tipper de rekkene du har funnet.
  130. 7) Du taster inn resultatene.
  131. 8) Maskinen finner ut at du har vunnet 12 rette... :-)
  132.  
  133. Kort forklart og sterkt forenklet. I tillegg finnes det muligheter for å
  134. lage garantitabell a la det du finner for 'vanlige' systemer, mm.
  135. (Garantitabell er ikke implementert ennå.)
  136.  
  137. Slik foregår rekkeutvelgelsen:
  138.  
  139.                   +----------------+
  140. 531441 rekker:    |  HHHHHHHHHHHH  |
  141.                   |  HHHHHHHHHHHU  |
  142.                   |  HHHHHHHHHHHB  |
  143.                   |  .             |
  144.                   |  .             |
  145.                   |  BBBBBBBBBBBB  |
  146.                   +----------------+
  147.                           |
  148.                           |
  149. Dine krav til  \          |
  150. rekkene        /     ++++++++++    (Filteret her er f.eks sikker H
  151.                           |         i alle de 11 første kampene.)
  152.                           |
  153.                           |
  154.                   +----------------+
  155. Godkjente rekker: |  HHHHHHHHHHH   |
  156.                   |  HHHHHHHHHHU   |
  157.                   |  HHHHHHHHHHB   |
  158.                   +----------------+
  159.                           |
  160.                           |
  161. Reduksjon    ->       +++++++++    (Filteret her er minimumsgaranti
  162.                           |         11 eller 10.) 
  163.                   +----------------+
  164. Ferdige rekker:   |  HHHHHHHHHHH   |
  165.                   +----------------+
  166.  
  167.  
  168. Dette skulle gi deg en ide om hvordan ting foregår.
  169.  
  170. Eksempelgjennomgangen lengre nede vil vise dette i praksis.
  171.  
  172. Andre spesielle features for MT er:
  173.  
  174. * Virtuelt minnesystem for rekkebufre. Du kan godt tippe 1000000 rekker
  175.   uten at systemet får problemer. (Derimot kan det bli problemer for din
  176.   egen lommebok...)
  177.  
  178. * Cache-system som finner nye rekker raskere hvis de nye rekkene kan bli et
  179.   subsett av tidligere genererte rekker.
  180.  
  181. * 12 eller 13 kamper. (Eller 1-2-3-4-5-6-7-8-9 for den saks skyld, men
  182.   akkurat det er ikke særlig nyttig.)
  183.  
  184. * Stort og stygt ikon :-)
  185.  
  186.  
  187.  
  188. 3. Tekniske data
  189. ****************
  190.  
  191. * Skrevet i 99% generell C, 1% Amiga-spesifikt (mest filbehandling).
  192.  
  193. * Ca 15000 kildekodelinjer inkl. headerfiler og kommentarlinjer.
  194.  
  195. * Objektorientert konstruksjon og skrevet i objektorientert C, så langt det
  196.   er mulig...
  197.  
  198. * Kompilert med Lattice C V5. 
  199.  
  200. * Finnes KUN til Amiga :-)  Skitt au, programmet kunne gjerne vært
  201.   kompilert  på en Intelprosessor med minimale forandringer, men Microsofts
  202.   egen C- kompilator klarte ikke å handtere 13 for-løkker inni hverandre...
  203.   Morsom feilmeldig fra kompilatoren: "Internal stack overflow". Som de
  204.   fleste vet, er hjelper ikke kommandoen "stack 1000000" så særlig mye på   en segmentbasert Intel-chip. 
  205.  
  206. * Krever endel minne: Ca 300K for å i det hele tatt starte opp. Har du ikke
  207.   nok minne er det dessverre ditt problem.
  208.  
  209.  
  210.  
  211. 4. Minimumskrav
  212. ***************
  213.  
  214. * Amiga :-)
  215.  
  216. * Minimum 300 KB ledig minne, men jo mer desto bedre.
  217.  
  218. * Harddisk er ikke nødvendig, men generelt vil jeg så si at hvis du ikke
  219.   har harddisk så synes jeg synd på deg...
  220.  
  221. * Interesse for fotball og en viss forståelse for hva fotballtipping går ut
  222.   på.
  223.  
  224. * Kickstart/Workbench 2.0: Programmet virker med KS/WB 2.0 osv. Ikke testet
  225.   på 1.3, men sannsynligvis virker det der også.
  226.  
  227.  
  228.  
  229. 5. Installasjon
  230. ***************
  231.  
  232. Kopier hele skuffen Mestertipp til din harddisk. Dette er hele
  233. installasjonen som er nødvendig for selve programmet MT.
  234.  
  235. Hvis du skal bruke Onliner til å lagre rekkene på diskett for å levere til
  236. kommisjonæren, må mer gjøres. Se Onliner.dok for dette.
  237.  
  238.  
  239.  
  240. 6. Bruk
  241. *******
  242.  
  243. Istedet for å vise hva hver enkelt meny brukes til, vil jeg vise en typisk
  244. gjennomgang av en tippeprosedyre. Dette gjøres gjerne på lørdag formiddag,
  245. slik at du kan følge med hvordan det går under tippekampen senere på dagen.
  246. (Husk det ikke finnes noen lagringsmulighet ennå.... :-)
  247.  
  248.  
  249.  
  250. 6.1. Oppstart
  251. =============
  252. Programmet kan startes fra et Shell eller fra Workbench. Hvis du starter
  253. fra Workbench, vil vinduet som kommer opp være for lite. Gjør vinduet stort
  254. nok til å se hele teksten.
  255.  
  256. På spørsmålet: 
  257.  
  258. "Skriv inn path for v-mem (f.eks: dh0: ):" 
  259.  
  260. skriver du inn harddiskpartisjonen som du ønsker å bruke som virtuelt
  261. minne. Eksempler er: Work:, DH1:, osv. ':' må være med.
  262.  
  263. Neste spørsmål er: 
  264.  
  265. "Hvor mange kamper på kupongen? (12 eller 13)" 
  266.  
  267. Skriv inn 12 eller 13. I Norge vil det normalt være 12 kamper.
  268.  
  269. Deretter kommer du til hovedmenyen:
  270.  
  271.  
  272. 6.2. Hovedmenyen
  273. ================
  274. Mestertipp: Amiga shell program v1.01a
  275. ----------------------------------------
  276. Rekker lagret: 0
  277.  
  278. v) Vise rekker
  279. i) Informasjon om kupongen (KUPINFO)
  280. k) Krav til rekkene (KRAV)
  281. t) Tellemåte (TELLINFO)
  282. g) Garantitabell
  283. s) Sjanse til premie
  284. r) Test rette
  285. m) Tell rekker
  286. l) Lagre data
  287. h) Hente data
  288. q) Slutt
  289.  
  290. Det første du bør gjøre er å gå til "i) Informasjon om kupongen". Trykk i
  291. og deretter RETURN.
  292.  
  293.  
  294. 6.3. Informasjon om kupongen
  295. ============================
  296. Du får da fram denne menyen:
  297.  
  298. Info om kupongen (prosenttabell, utgangsrekke og nullerrekke)
  299. -------------------------------------------------------------
  300. Kamp  %H  %U  %B      E    Utg  Nul
  301.   1:  40  30  30    34.0   (H)  (H)
  302.   2:  40  30  30    34.0   (H)  (H)
  303.   3:  40  30  30    34.0   (H)  (H)
  304.   4:  40  30  30    34.0   (H)  (H)
  305.   5:  40  30  30    34.0   (H)  (H)
  306.   6:  40  30  30    34.0   (H)  (H)
  307.   7:  40  30  30    34.0   (H)  (H)
  308.   8:  40  30  30    34.0   (H)  (H)
  309.   9:  40  30  30    34.0   (H)  (H)
  310.  10:  40  30  30    34.0   (H)  (H)
  311.  11:  40  30  30    34.0   (H)  (H)
  312.  12:  40  30  30    34.0   (H)  (H)
  313. Forventningsverdier: 
  314.      4.8 3.6 3.6   408.0   0.0  0.0
  315. Største sum: 480  Minste sum: 360
  316. Antall utgangstegn: 0   Antall nullertegn: 0
  317.  
  318. f) Forandre prosentverdi
  319. s) Standard oppsett for utgangs- og nullerrekke
  320. u) Sett tegn av/på i utgangsrekke
  321. i) Sett tegn i utgangsrekke
  322. n) Sett tegn av/på i nullerrekke
  323. m) Sett tegn i nullerrekke
  324. z) Tilbake ...
  325.  
  326. Her har du alle kampene på kupongen. "%H", "%U" og "%B" er henholdsvis
  327. prosentsjansen for hjemmeseier, uavgjort og borteseier. Her er det meningen
  328. du skal skrive inn dine egne prosentsjanser. Dette gjør du med "f) Forandre
  329. prosentverdi". Summen av prosentverdier må være enten 100 eller 99. 99 er
  330. mulig siden det skal være mulig å angi 33 33 33 som prosenter på en helt
  331. åpne kamp.
  332.  
  333. Hvordan finner du prosentene til en kamp? En enkelt og grei måte å bruke er
  334. å tenke seg at lagene skulle ha spilt 10 kamper. Hvis du da f.eks tror
  335. hjemmelaget vil vinne 4 eller 5 av disse, setter du prosenten på
  336. hjemmeseier til 45.
  337.  
  338. Når man legger sammen den største verdien for prosent i hver enkelt kamp,
  339. får vi verdien oppgitt etter "Største sum:".  Når man legger sammen den
  340. minste verdien for prosent i hver enkelt kamp, får vi verdien oppgitt etter
  341. "Minste sum:". Dvs vil si at alle rekker som du kan kombinere vil gi en
  342. `poengsum' som ligger mellom  disse to summene. Du kan senere f.eks sette
  343. opp at du vil tippe kun rekker som ligger innenfor et bestemt intervall av
  344. poengsummer.
  345.  
  346. "E" angir forventningsverdien for hver enkelt kamp. Dersom dine oppgitte
  347. prosentverdier for en kamp er `riktige', vil du i snitt få så mange poeng
  348. på denne kampen som "E" viser.
  349.  
  350. "Forventningsverdier:" angir h.h.v. hvor mange hjemmeseiere, uavgjort og
  351. borteseiere som du i snitt vil få med de oppgitte prosentverdiene. Disse
  352. forventningsverdiene kan du for eksempel bruke når du skal sette opp
  353. tegnfordelingskravene til rekkene.
  354.  
  355. Det neste tallet på linjen under "Forventningsverdier:" er
  356. forventningsverdien for hvor mange poeng du vil få med de oppgitte
  357. prosentverdiene. Du kan se på dette tallet som den mest `sannsynlige'
  358. verdien du vil få på tippingen.
  359.  
  360. "Utg" viser utgangsrekka, og "Nul" viser nullerrekka. Utgangsrekka er den
  361. mest sannsynlige rekka, mens nullerrekka er den minst sannsynlige rekka.
  362. Normalt vil du sette hvert enkelt utgangstegn til den summen som er høyest
  363. av %H, %U og %B, og motsatt for nullerrekka.
  364.  
  365. Etter at du har skrevet inn alle dine prosentverdier, kan du bruke s) til å
  366. sette utgangsrekka og nullerrekka til standardverdier. Du kan selvsagt
  367. forandre dem etterpå. Bruk i) og m) til dette.
  368.  
  369. Det er mulig å slå utgangstegn og nullertegn av og på. Med andre ord: Du
  370. trenger ikke å ha utgangstegn og nullertegn på alle kampene. For eksempel
  371. kan du la  være å ha utgangstegn på kamper hvor utfallet er svært åpent.
  372.  Bruk henholdvis u) og n) for å slå tegn i utgangsrekka av og på. Tegn som
  373. er av teller ikke med i utgangs/nullerrekka vil bli vist i parantes på
  374. oversikten.  "Antall utgangstegn:" og "Antall nullertegn:" viser hvor mange
  375. tegn utgangs- og nullerrekka inneholder.
  376.  
  377. De to siste tallene på linjen under "Forventningsverdier:" viser h.h.v.
  378. hvor mange forventningsverdien for antall utgangstegn og nullertegn. For
  379. eksempel viser forventningsverdien for antall utgangstegn hvro mange
  380. utgangstegn som du  mest sannsynlig vil få.
  381.  
  382. For å forsette eksemplet, skriv inn prosentverdiene slik at tabellen blir
  383. seende slik ut:
  384.  
  385. Info om kupongen (prosenttabell, utgangsrekke og nullerrekke)
  386. -------------------------------------------------------------
  387. Kamp  %H  %U  %B      E    Utg  Nul
  388.   1:  40  31  29    34.0    H    B 
  389.   2:  45  30  25    35.5    H    B 
  390.   3:  60  30  10    46.0    H    B 
  391.   4:  40  35  25    34.5    H    B 
  392.   5:  85  13   2    74.0    H    B 
  393.   6:  60  30  10    46.0    H    B 
  394.   7:  48  30  22    36.9    H    B 
  395.   8:  28  32  40    34.1    B    H 
  396.   9:  30  32  38    33.7    B    H 
  397.  10:  22  26  52    38.6    B    H 
  398.  11:  35  40  25    34.5    U    B 
  399.  12:  50  30  20    38.0    H    B 
  400. Forventningsverdier: 
  401.      5.4 3.6 3.0   485.8   6.0  2.5
  402. Største sum: 598  Minste sum: 248
  403. Antall utgangstegn: 12   Antall nullertegn: 12
  404.  
  405. Bruk z) til å returnere til hovedmenyen når du er ferdig med å skrive inn
  406. alle prosentverdiene og når du har satt utgangsrekka og nullerrekka slik du
  407. vil ha den.
  408.  
  409.  
  410. 6.4. Krav til rekkene
  411. =====================
  412. Du velger deretter "k) Krav til rekkene" på hovedmenyen og du får da fram
  413. denne menyen:
  414.  
  415. Krav
  416. ----
  417. k) Generelle krav
  418. g) Gruppekrav
  419. t) Tegnfordeling
  420. a) Krav av/på
  421. z) Tilbake ...
  422.  
  423. Velg her k) for generelle krav. Du får da fram følgende:
  424.  
  425. Generelle krav
  426. --------------
  427. Utgangstips: Max: 13  Min: 0
  428. Nullertips:  Max: 13  Min: 0
  429. Tegn på rad: Max Min
  430.           H: 13   0
  431.           U: 13   0
  432.           B: 13   0
  433. Poengsum: Max: 1300  Min: 0
  434. 100 % betyr IKKE sikker kamp.
  435. 0 % er lovlig tegn.
  436. Garanti: 13
  437.  
  438. u) Utgangstips
  439. n) Nullertips
  440. t) Tegn på rad
  441. p) Poengsum
  442. 1) 100 % == sikker kamp av/på
  443. 0) 0 % == ulovlig tegn av/på
  444. g) Garanti
  445. z) Tilbake
  446.  
  447. Generelle krav er de kravene til rekkene som beregnes på grunnlag av hele
  448. kupongen. Vi begynner med det enkleste:
  449.  
  450. "Utgangstips:" angir hvor mange utgangstips rekkene du tipper skal ha. Du
  451. setter minimum og maksimum utgangstips med u).
  452.  
  453. "Nullertips:" angir hvor mange nullertips rekkene du tipper skal ha. Du
  454. setter minimum og maksimum utgangstips med n). Du har kanskje merket at du
  455. ofte gjør en eller flere helbom på enkelte kamper når du tipper. Dermed kan
  456. du for eksempel sette at rekke du tipper skal ha 1 til 3 (f.eks)
  457. nullertips. 
  458.  
  459. "Tegn på rad:" angir hvor mange tegn på rad av H, U og B som hver enkelt
  460. rekke  kan ha. Hvis du for eksempel vil tvinge hver rekke til å ha minst to
  461. H'er etter hverandre, setter du minimum antall H på rad til 2. Minimum 1
  462. betyr at alle rekkene som genereres må minst ha et tilfelle av det tegnet,
  463. men dette kan også settes v.h.a tegnfordelig (vil bli forklart senere).
  464.  
  465. "Poengsum:" er kanskje det viktigste kravet du kan sette. Etter hvert som
  466. du får litt erfaring, vil du kunne se hvor mange poeng du vansligvis kommer
  467. til å få. Dermed kan du sette at alle rekkene du tipper skal ligge innen et
  468. visst intervall av poeng. Du kan også bruke forventningsverdien for
  469. poengsum som du kan lese på menyen for i) Informasjon om kupongen under
  470. hovedmenyen. I snitt vil du sannsynligvis få poengsummer som ligger rundt
  471. denne verdien.
  472.  
  473. "100% betyr (IKKE) sikker kamp." Selv om du setter enkelte kamper til
  474. "100%"  trenger ikke det å bety at alle rekkene som blir generert vil kun
  475. ha dette tegnet. Dette forklares slik: La oss tenke oss at du har satt en
  476. kamp til 100% på hjemmeseier og at "Største sum:" (under i) Infomasjon om
  477. kupongen" er 600. Hvis du så setter minimum poensum til 450 betyr det at
  478. du kan tape opptil 150 poeng. Dermed vil du kunne tippe rekker som
  479. inneholder U og B i denne kampen. Dersom du ønsker å forhindre dette, kan
  480. du bruke 1) til å sette at kamper med 100% kun skal ha det tegnet som  er
  481. satt til 100%. Dette vil også føre til kortene beregningstid.
  482.  
  483. "0% er (ULOVLIG) tegn." Samme prinsipp som for 100%-kamper forklart
  484. ovenfor. 0) setter at ingen rekker med 0% for tegnet skal bli generert.
  485. Dette kan for eksempel brukes til å lage ekte halvgarderinger. (Kamper
  486. med prosentfordelig 50-50-0.) Hvis du setter dette, kan du få kortere
  487. beregningstid for rekkene.
  488.  
  489. "Garanti:" er reduksjonsfilteret som er beskrevet kort i kapitlet
  490. "Oversikt". Dersom alle kravene er oppfylt, er det garatien som bestemmer
  491. hvor mange rette du er MINST garantert å få. For eksempel hvis du setter
  492. garanti til 11, og alle kravene er oppfylt, vil du MINST få 1 11'er. (Du
  493. har selvsagt også sjansen til 12.) I samme eksempel kan du likevel få 11
  494. rette hvis kravene IKKE er helt oppfylt. Dette betyr i så fall at du ville
  495. ha fått 12 HVIS kravene var oppfylt. Fordelen med å sette lavere garanti er
  496. at du ikke trenger å ha så stramme krav. Funksjonen g) Garantitabell under
  497. hovedmenyen viser hva sjansene er for å få 12, 11, 10 osv rette når. Denne
  498. kan du bruke til å sette garantien til det nivå som passer deg.
  499. (Garantitabell er ikke implementert ennå.)
  500.  
  501. Vi forsetter eksemplet. Sett de generelle kravene til følgende:
  502.  
  503. Generelle krav
  504. --------------
  505. Utgangstips: Max: 8  Min: 6
  506. Nullertips:  Max: 4  Min: 2
  507. Tegn på rad: Max Min
  508.           H:  6   2
  509.           U:  3   0
  510.           B:  3   0
  511. Poengsum: Max: 520  Min: 480
  512. 100 % betyr IKKE sikker kamp.
  513. 0 % er lovlig tegn.
  514. Garanti: 10
  515.  
  516. Bruk så z) til å gå tilbake til forrige meny og velg t) Tegnfordeling. Du
  517. får da opp denne menyen:
  518.  
  519. Tegnfordelinger
  520. ---------------
  521. Det er i alt 91 forskjellige tegnfordelinger.
  522. Av disse er 0 lovlige. TFKL gjelder for 12 kamper.
  523.  
  524. v) Vis alle lovlige
  525. s) Slett tegnfordeling
  526. n) Ny tegnfordeling
  527. g) Generelle grenser
  528. i) Ingen lovlige (sletter alle)
  529. z) Tilbake
  530.  
  531. Som det står, er det 91 mulige tegnfordelinger med 12 kamper på kupongen.
  532. Til å begynne med er ingen av disse lovlige. Bruk "g) Generelle grenser"
  533. for å sette de  generelle grensene for tegnfordelingene som skal være
  534. lovlige.
  535.  
  536. Først får du spørsmål om hvor mange H som skal være lovlige. Skriv: 5 7
  537. Skriv deretter 2 5 for U og til slutt 2 5 for B. Dette betyr at vi vil
  538. tillate alle tegnfordelinger som har fra og med 5 til og med 7
  539. hjemmeseiere, fra og med 2 til og med 4 uavgjorte og fra og med 2 til og
  540. med 4 borteseiere. 
  541.  
  542. Du vil nå se at det er 7 lovlige tegnfordelinger. Disse kan du liste opp
  543. med "v) Vis alle lovlige".
  544.  
  545. I dette eksempelet ønsker vi å ha med to andre tegnfordelinger i  tillegg,
  546. nemlig: 4 5 3 og 4 4 4 . Bruk "n) Ny tegnfordeling" for å skrive inn disse
  547. to. Skriv inn tallene med mellomrom mellom hvert av dem, altså først 4 5 3
  548. og deretter n) på nytt og så 4 4 4.
  549.  
  550. Dermed skulle du ha 9 lovlige tegnfordelinger. 
  551.  
  552. Dersom du ønsker å slette en tegnfordeling, kan du bruke "s) Slett
  553. tegnfordeling".
  554.  
  555. "i) Ingen lovlige" sletter alle tegnfordelingene. Dette kan være nyttig å
  556. gjøre hvis du skal sette generelle grenser på nytt.
  557.  
  558. Velg til slutt z) for å gå tilbake til forringe meny, og velg der "g)
  559. Gruppekrav" for å få opp denne menyen:
  560.  
  561. Gruppekrav
  562. ----------
  563. Antall gruppekrav: 0
  564. Av: 0   Paa: 0
  565.  
  566. v) Vis alle
  567. u) Vis nummer xx
  568. s) Slett nummer xx
  569. n) Nytt
  570. a) Slå gruppekrav xx av/på
  571. z) Tilbake
  572.  
  573. Gruppekrav er en type krav som ikke nødvendigvis angår alle kampene på
  574. kupongen, men kun et utvalg av disse. For eksempel kan et gruppekrav være
  575. at du skal ha minimum 3 hjemmeseiere av kampene 3, 4, 5, 8, 10 og 12.
  576.  
  577. Følgende kombinasjoner av gruppekrav er mulige:
  578.            
  579.                         H
  580. Maksimum                U
  581. Minimum   X antall      B        av kampene  X1, X2, X3, ..., Xn.
  582.                     utgangstips 
  583.                     nullertips  
  584.  
  585. Et typisk gruppekrav er å sette at du skal ha maksimum (f.eks) tre
  586. utgangstips av de fire mest sikre kampene rett. Bakgrunnen for dette kravet
  587. er følgende:  Etter at du har tippet endel vil du sikkert finne ut at du
  588. sjelden vil klare å treffe på alle de fire (f.eks) mest sikre kampene, og
  589. HVIS du likevel gjør det vil premiene bli svært lave siden også de fleste
  590. andre tippere sannsynligvis har tippet disse kampene riktig. Da er det
  591. kanskje bedre å satse på å få tre (f.eks) av disse kampene inn, og heller
  592. få litt bedre premie. 
  593.  
  594. De mest sikre kampene er de kampene som har høyest forventningsverdi. Disse
  595. verdiene finner du under "i) Informasjon om kupongen" fra hovedmenyen.
  596.  
  597. Det finnes en utrolig mengde gruppekrav som du kan sette sammen.
  598.  
  599. Nye gruppekrav skrives inn med "n) Nytt". Bruk dette til å skrive inn
  600. gruppekravene som er listet opp nedenfor. Når du får beskjed som å skrive
  601. inn kampene, skriver du dem med mellomrom mellom hver kamp, og skriver 0
  602. til slutt. Etter at gruppekravet er skrevet inn får du spørsmål om det skal
  603. være av eller på. Skriv p for på. Ved beregning av rekkene vil kun krav som
  604. er på bli tatt hensyn til.
  605.  
  606. Maksimum 4 utgangstips av kampene 3, 5, 6, 7, 12.
  607. Minimum  3 utgangstips av kampene 3, 5, 6, 7, 12.
  608. Minimum  2 utgangstips av kampene 3, 5, 6.
  609. Maksimum 1 nullertips  av kampene 3, 5, 6, 7, 12.
  610.  
  611. Bruk "v) Vis alle" til å liste opp alle gruppekrav. Bruk dette til å sjekke
  612. at du har skrevet inn alle fire gruppekravene riktig.
  613.  
  614. Alle gruppekrav er nummerert fra 0 og oppover. "u) Vis nummer xx" lister
  615. opp kun  ett gruppekrav.
  616.  
  617. "s) Slett nummer xx" sletter gruppekravet som du skriver inn.
  618.  
  619. "a) Slå gruppekrav av/på" slår et gruppekrav av og på. Gruppekrav som er
  620. slått av  vil ikke bli tatt hensyn til ved beregning av rekkene. Det kan
  621. være enklere å slå et gruppekrav av istedet for å slette det hvis du senere
  622. ombestemmer deg og likevel vil ha det med.
  623.  
  624. "z) Tilbake" går tilbake til forrige Krav-menyen.
  625.  
  626. Velg "a) Krav av/på" under Krav-menuen. Du får da fram følgende liste:
  627.  
  628. Krav av/på
  629. ----------
  630. Alle kravtyper i parantes er slått av. Alle kravtyper som er slått
  631. av, vil ikke bli tatt hensyn til ved telling.
  632.  0: Min utgangstips
  633.  1: Max utgangstips
  634.  2: Min nullertips
  635.  3: Max nullertips
  636.  4: Tegnfordeling
  637.  5: Min på rad
  638.  6: Max på rad
  639.  7: Gruppekrav
  640.  8: Min poengsum
  641.  9: Max poengsum
  642. 10: '100 prosent'
  643. 11: '0 prosent'
  644. 12: Garanti
  645. Skriv nummeret til kravtypen du vil ha slått av/på
  646. (-1 for tilbake) : 
  647.  
  648. Som denne menyen viser, er det mulig å slå hele beregningskrav av og på.
  649. For eksempel, hvis du skriver 4, vil "Tegnfordeling" bli opplistet i
  650. parantes. Dette betyr at kravene du har skrevet inn for tegnfordeling ikke
  651. vil bli tatt hensyn til ved beregning av rekkene. Med andre ord: Alle
  652. tegnfordelinger er mulige.
  653.  
  654. La alle kravtypene stå på og skriv -1 for å gå tilbake til forrige meny.
  655.  
  656. Vi er da ferdige med å sette opp alle kravene til rekkene. Bruk z) til å
  657. gå tilbake til hovedmenyen.
  658.  
  659.  
  660. 6.5. Tellemåte
  661. ==============
  662. Fra hovedmenyen, velg "t) Tellemåte". Følgende meny kommer fram:
  663.  
  664. Tellemåte
  665. ---------
  666. Tellemåte: Fullstendig gjennomgang
  667. Stopp ved -1 rekker.  (Må være > 0 dersom 'tilfeldig' tellemåte.)
  668. Lagre rekker: JA  (Må være JA hvis garanti<12 eller 'tilfeldig' tellemåte.)
  669. Like rekker ok: NEI  (Kun aktuelt hvis garanti=12/13 og 'tilfeldig'
  670. tellemåte.)
  671. Forkastetoversikt: NEI  (JA kan gi vesentlig lengre telletid.)
  672.  
  673. v) Vis forkastetoversikt
  674. t) Forandre tellemåte
  675. s) Sett stopp ved xx rekker
  676. l) Lagre rekker av/på
  677. r) Like rekker ok av/på
  678. f) Forkastetoversikt av/på
  679. z) Tilbake
  680.  
  681. "s) Sett stopp ved xx rekker": Det er mulig å få beregningsrutinen til å
  682. avbrykte en beregning når et visst antall rekker er funnet. Dette antallet
  683. setter du med s).
  684.  
  685. Det er to måter å beregne rekkene på. "t) Forandre tellemåte" bytter mellom
  686. disse to. Tellemåtene er disse to:
  687.  
  688. 1) Fullstendig gjennomgang: Med denne tellemåten vil absolutt alle rekkene
  689.    som oppfyller alle kravene bli bregenet. Vanligvis er det denne
  690.    tellemåten som du bør benytte hvis du  tipper for `endel' penger...
  691.  
  692. 2) Tilfeldig trekning: Istedet for å gå igjennom alle rekkene, kan
  693.    beregningsrutinen finne noen tilfeldig valgte rekker som oppfyller
  694.    kravene. Dette vil føre til større spredning på rekkene, og kan være
  695.    greit å bruke hvis du ikke tipper for altfor mange kroner. Merk
  696.    imidlertid at du IKKE vil være garantert å få den minimumgarantien som
  697.    du har satt under "Generelle krav" på grunn av måten denne tellemåten
  698.    virker på. Hvis du skal benytte denne tellemåten må du først sette når
  699.    beregningen skal avbrytes. Dette settes med s) som forklart ovenfor.
  700.  
  701. "l) Lagre rekker" betyr at programmet intert vil ta vare på de rekkene som
  702. genereres under beregningen av dem. Hvis du setter denne til NEI, hvis kun
  703. antallet rekker som oppfyller alle kravene bli funnet. Merk at hvis du har
  704. satt garanti til mindre enn antall kamper på kupongen, MÅ rekkene lagres.
  705. Dette gjelder også hvis du bruker tellemåten tilfeldig trekning. Den eneste
  706. nytten du kan ha av å ikke lagre rekkene mest de beregnes er sannsynligvis
  707. hvis du har lite minne og har lyst til å finne HVOR MANGE rekker som har
  708. måttet blitt tippet for å få 12/13 rette.
  709.  
  710. "r) Like rekker ok av/på" setter om det skal være tillatt å generere like
  711. rekker. Dette er kun mulig hvis tellemåten er tilfeldig trekning og
  712. garantier er satt lik antallet kamper på kupongen.
  713.  
  714. "f) Forkastetoversikt av/på" slår forkastetoversiktet av og på. Etter en
  715. beregning som er gjort  med forkastetoversikten på, kan du bruke "v) Vis
  716. forkastetoversikt" til å få listet opp hva som gjorde at rekkene IKKE
  717. oppfylte kravene. Summen av rekker som blir opplistet kan være større enn
  718. antallet rekker som ble forkastet. Dette skyldes at en rekke ofte ikke har
  719. tilfredsstilt flere av kravene. Kravet om garanti er litt spesielt: Rekkene
  720. blir kun testet mot garantikravet dersom de allerede har oppfylt alle de
  721. andre kravene. Med forkastetoversikten på kan det ta vesentlig lengre tid å
  722. beregne rekkene.
  723.  
  724. For vårt eksempel, la alle verdiene stå som de står, dvs:
  725.  
  726. Tellemåte
  727. ---------
  728. Tellemåte: Fullstendig gjennomgang
  729. Stopp ved -1 rekker.  (Må være > 0 dersom 'tilfeldig' tellemåte.)
  730. Lagre rekker: JA  (Må være JA hvis garanti<12 eller 'tilfeldig' tellemåte.)
  731. Like rekker ok: NEI  (Kun aktuelt hvis garanti=12/13 og 'tilfeldig'
  732. tellemåte.)
  733. Forkastetoversikt: NEI  (JA kan gi vesentlig lengre telletid.)
  734.  
  735. Bruk z) til å gå tilbake til hovedmenyen.
  736.  
  737.  
  738. 6.6. Tell rekker
  739. ================
  740. Fra hovedmenyen, bruk "m) Tell rekker" for å beregne rekkene.
  741.  
  742. Beregningen av rekkene tar en god del tid, dette avhenger av hvor rask din
  743. maskin er. På en 68000-basert A2000 eller A500 kan nok tiden bli i lengste
  744. laget...
  745.  
  746. Hold ned CTRL og C for å avbryte tellingen.
  747.  
  748. Når tellingen er ferdig vl vil "Rekker lagret: 626" vise hvor mange rekker
  749. som ble funnet. Hvis du har skrevet inn alt som det har vært vist under
  750. gjennomgangen her, vil du få 626 rekker. 
  751.  
  752. Hvis du ikke er fornøyd med dette (kanskje det ble for mange eller for få
  753. rekker), kan du gi inn og stramme eller slakke på kravene og deretter telle
  754. på nytt. Forsett slik til du har fått det antallet rekker som du er fornøyd
  755. med.
  756.  
  757.  
  758. 6.7. Vise rekker
  759. ================
  760. Fra hovedmenyen, velg "v) Vise rekker" for å se på rekkene. Du får da opp
  761. følgende meny.
  762.  
  763. v) Vise rekker
  764. --------------
  765. Det finnes 626 rekker i rekkelageret
  766.  
  767. a) Alle rekkene
  768. f) Fra rekke xx til rekke yy
  769. o) Lagre rekker på fil i Online format
  770. z) Hovedmeny
  771.  
  772. "a) Alle rekkene" lister opp alle rekkene på skjermen. Rekkene er nummerert
  773. startende på 0.
  774.  
  775. "f) Fra rekke xx til rekke yy" lister kun opp de rekkene som ligger mellom
  776. de grensene du angir.
  777.  
  778. "o) Lagre rekker på fil i Online format" lagrer rekkene på en fil som du
  779. kan ta med på diskett til en Norsk Tipping kommisjonær med mulighet til å
  780. overføre rekker fra diskett. Dette er forøvrig den eneste måten å få lagret
  781. skrevet ut rekkene på, foreløpig. Dersom det er et stort ønske om å lage
  782. rutiner for utskrift på datakuponger, vil jeg vurdere å gjøre det.
  783. Imidlertid håper jeg å slippe, det er endel annet som jeg også skulle ha
  784. brukt mer tid på.
  785.  
  786. Trykk o) for å lagre rekkene på diskett. Først må du ha installert
  787. programmet Onliner, som blir brukt til å lage Online-format på disketten.
  788. Les Onliner.dok for hvordan dette programmet installeres. Her står det også
  789. beskrevet hva slags filnavn som er lovlige for Online-filer.
  790.  
  791. Etter at du har laget Online-fil, tar du disketten med til
  792. Tippe-kommisjonæren og leverer inn denne. Der vil rekkene bli overført
  793. direkte til Norsk Tipping i Hamar. Dette kan du vanligvis gjøre fram til
  794. klokka 14.30 på lørdager, men dette kan variere.
  795.  
  796. Bruk z) til å gå tilbake til hovedmenyen.
  797.  
  798. Når kampene er ferdigspilt, kan du teste hvor mange rette du fikk. Det er
  799. også spennenede å følge med under kampen hvordan du ligger an!
  800.  
  801.  
  802. 6.8. Test rette
  803. ===============
  804. Velg "r) Test rette" fra hovedmenyen for å teste antall rette. Du får da
  805. fram følgende meny:
  806.  
  807. Test rette
  808. ----------
  809. a) Kun antall rette
  810. b) Antall og rekkenummer
  811. z) Tilbake
  812.  
  813. "a) Kun antall rette" er en rask og enkel funksjon for å kun finne hvor
  814. mange rette rekkene gav. Du får først spørsmål om å skrive inn den rette
  815. rekka. Denne skriver du med h, u og b uten mellomrom. Skriv f.eks følgende:
  816. uhbbhhhubbhh
  817.  
  818. Du får da fram følgende oversikt som viser hvor mange rekker som hadde et
  819. visst antall rette:
  820.  
  821. Rette  Antall rekker
  822.   12    0
  823.   11    1
  824.   10    2
  825.    9   12
  826.    8   39
  827.    7   77
  828.    6  134
  829.    5  176
  830.    4  123
  831.    3   54
  832.    2    8
  833.    1    0
  834.    0    0
  835.  
  836. Her ser vi blant annet at det var 0 rekker med 12 rette, men 1 rekke med 11
  837. rette og 2 med 10.
  838.  
  839. "b) Antall og rekkenummer" er en litt mer avansert funksjon. Her kan du i
  840. tillegg få listet opp HVILKE rekker som har et visst antall rette, samt å
  841. benytte ? istedet for h, u eller b for kamper som du ikke vet utfallet av
  842. ennå. Oversikten over antall rette vil da bare gjelde de kamper som du har
  843. skrevet h, u eller b på. Dette kan være nyttig hvis noen av kampene spilles
  844. på et annet tidspunkt, og du vil vite hvor mange rette du har av de kampene
  845. som allerede er spilt. 
  846.  
  847. Velg b) og skriv for eksempel inn følgende rekke: ???bhhhubbhh
  848. Deretter får du spørsmål om "Fra antall rette:". Skriv her det minste
  849. antallet rette du vil ha rapportert, f.eks 6. På "til anatall rette:"
  850. skriver du det maksimum antall rette du vil ha rapportert. Her kan du
  851. skrive 9, siden vi kun har skrevet inn 9 tegn. Du vil deretter få listet
  852. opp hvor mange rekker som har fra 6 til 9 rette (av de 9 tegnene du har
  853. skrevet inn):
  854.  
  855. Rette  Antall rekker
  856.    9    0
  857.    8    7
  858.    7   27
  859.    6   85
  860.  
  861. Siden det var tre kamper som ikke var angitt, betyr det at du har sjansen
  862. til maksimum 11 rette. Du kan få listet opp disse rekkene ved å svare j på
  863. spørsmålet "Vise rekkene & nr for et bestemt antall rette? (j/n)" Skriv
  864. deretter 8 på det neste spørsmålet og alle rekkene som har 8 rette av de 9
  865. kampene vil bli listet opp, samt deres nummer.
  866.  
  867. Skriv deretter n for å gå tilbake til "Test rette" menyen, og z) for å  gå
  868. tilbake til hovedmenyen.
  869.  
  870. De andre valgmulighetene på hovedmenyen som vi ikke har gjennomgått til nå
  871. er ikke implementert ennå.
  872.  
  873. Velg "q) Slutt" for å gå ut av programmet.
  874.  
  875.  
  876.  
  877. 7. Utskrifter
  878. *************
  879.  
  880. Foreløpig kan man ikke få papirutskrift på en enkelt måte. Du kan likevel
  881. ta en kopi av  kuponginfoen og kravene på skriveren hvis du har Kickstart
  882. og Workbench 2.0.
  883.  
  884. Åpne et Shell-vindu og skriv der "copy * to prt:". `*' står for stardard
  885. input. Merk teksten du vil ha ut på skriver med musa og bruk høyre Amiga og
  886. C for å legge denne på klipperbordet. Deretter aktiviserer du
  887. Shell-vinduet, og trykker høyre Amiga og V for å `lime' teksten inn i dette
  888. vinduet.
  889.  
  890. Gjenta denne framgangsmåten til du har fått skrevet ut alle de data du
  891. trenger. 
  892.  
  893. Lagring av data på fil vil bli implementert så snart jeg får tid til det.
  894. Dessverre betyr det at det nok kan gå en stund...
  895.  
  896.  
  897.  
  898. 8. Framtidige planer
  899. ********************
  900.  
  901. * Lage en rutine som skriver ut rekkene på fil i OnLine-format. Dette har
  902.   top-pri. Jeg får vel gjort det i løpet av høsten... :-) (Dette er nå
  903.   gjort programmet Onliner fikser dette. LES ONLINER.DOK!)
  904.  
  905. * Oversette til C++ og gå over til GCC. (Like godt å gjøre det først som
  906.   sist.) Eller kanskje SAS C++?
  907.  
  908. * Definere og implementere lagring av data. (En IFF-standard for
  909.   tipping....? Hvorfor ikke!?!) Dette punktet har høy prioritet.
  910.  
  911. * Lage en ARexx-port, og gjøre beregningsprogrammet til en ren ARexx
  912.   server.
  913.  
  914. * Lage et pent og vakkert brukergrensesnitt som genererer ARexx-meldinger.
  915.   Har ikke bestemt meg om jeg skal bruke CanDo eller MUI... MUI ser jo
  916.   UTROLIG vakkert ut, men skulle skulle gjerne hatt en visuell editor.
  917.  
  918. * En masse nye krav-typer og mulighet for flere prosenttabeller.
  919.  
  920. * Bedre algoritme for rekketesting. (Har et par ideer...) Kanskje MC her.
  921.  
  922. * Rekke-evaluering av maskinen, dvs at programmet tester hvor "gode"
  923.   rekkene dine er i forhold til prosenttabellen.
  924.  
  925. * MS-DOG versjon. (Hvis jeg finner en kompilator som _virker_!)
  926.  
  927. * Windows version. (Dette er ikke noe jeg akkurat ser fram til, men pokker
  928.   så mange PC'er det finnes derute! I alle fall ligger dette nederst på
  929.   prioritetlista...)
  930.  
  931. * Fjerne aøllle skriverfeill i dennen dokumentasjonenr :-) og lage TexInfo/
  932.   AmigaGuide format, samt _bedre_ dok.
  933.  
  934. * Lokalisering for Sverige, Danmark og Finland. Støtte for disse landenes
  935.   Online-formater og tippetegn.
  936.  
  937. * Gi ut en kommersiell versjon eller som shareware? Hva synes DU?
  938.  
  939. * Implementere programmet på parallellmaskinen "Kubben" ved IDT.... :-)
  940.  
  941.  
  942.  
  943. 9. Bugs
  944. *******
  945.  
  946. What should you do without 'em...
  947.  
  948. * Skriv ikke inn tekst når tall-input forventes! Det er noen problemer med
  949.   Lattices scanf-funsjon.
  950.  
  951. * EOF ved input kan føre til at programmer går i evig løkke. (Tror jeg har
  952.   fikset dette de fleste steder.)
  953.  
  954. * Cache-systemet ser ut til å bomme noen ganger.... Ikke noe farlig,
  955.   beregningen vil bare kunne ta 1-10 ganger lengre tid enn den kanskje
  956.   ville ha gjort. Ærlig talt så vet jeg ikke om dette er en bug heller, men
  957.   jeg syens det har oppført seg litt uventet noen ganger.
  958.  
  959. * MT's virtuelle minnesystem lager filer på harddisken som ikke blir
  960.   fjernet hvis programmet stopper på en 'unormal' måte. Du må slette disse
  961.   manuelt, og de skiller seg godt ut, for å si det slik.
  962.  
  963. * Det virtuelle minnesystemet defaultler til DH0:, hvs som vil skje hvis du
  964.   ikke har DH0: vet jeg ikke. Jeg har faktisk ikke testet det. Men et sted
  965.   i koden finnes det et kall for å sette stien til  hvor disse filene skal
  966.   lagres - skitt det hadde vært kjapt å endre MT slik at man kinne sette
  967.   slikt fra brukergrensesnitt.... Vent  på neste versjon... (Dette er nå 
  968.   gjort.)
  969.  
  970.  
  971.  
  972. 10. Snikreklame
  973. ***************
  974.  
  975. På jakt etter billig Amiga-utstyr? Prøv DataKompaniet ANS i Trondheim! :-)
  976.